var Class = (function() {
  function createClass(properties) {
    var f = function() {
      this.init.apply(this, arguments);
     }

    for (var prop in properties) {
      f.prototype[prop] = properties[prop];
    }
    if (!f.prototype.init) {
      f.prototype.init = function() {}
    }
    return f;
  }

  Function.prototype.inherit = function(parent) {
    var oldPrototype = this.prototype;
    var prototype = new parent();
    this.prototype = Object.create(prototype);
    this.prototype._super = parent;
    for (var prop in oldPrototype) {
      this.prototype[prop] = oldPrototype[prop];
    }
  }
  
  return {
    create: createClass,
  };
}());